<?php
namespace App\Models\Entity\wxbox;

use Swoft\Db\Model;
use Swoft\Db\Bean\Annotation\Column;
use Swoft\Db\Bean\Annotation\Entity;
use Swoft\Db\Bean\Annotation\Id;
use Swoft\Db\Bean\Annotation\Required;
use Swoft\Db\Bean\Annotation\Table;
use Swoft\Db\Types;

/**
 * @Entity()
 * @Table(name="app_act")
 * @uses      AppAct
 */
class AppAct extends Model
{
    /**
     * @var int $id 
     * @Id()
     * @Column(name="id", type="integer")
     */
    private $id;

    /**
     * @var int $wxid 
     * @Column(name="wxid", type="integer")
     * @Required()
     */
    private $wxid;

    /**
     * @var string $title 
     * @Column(name="title", type="string", length=100)
     * @Required()
     */
    private $title;

    /**
     * @var string $content 
     * @Column(name="content", type="text", length=65535)
     * @Required()
     */
    private $content;

    /**
     * @var int $addtime 
     * @Column(name="addtime", type="integer")
     * @Required()
     */
    private $addtime;

    /**
     * @var int $updatetime 
     * @Column(name="updatetime", type="integer", default=0)
     */
    private $updatetime;

    /**
     * @var string $address 
     * @Column(name="address", type="string", length=200)
     * @Required()
     */
    private $address;

    /**
     * @var int $starttime 
     * @Column(name="starttime", type="integer", default=0)
     */
    private $starttime;

    /**
     * @var int $endtime 
     * @Column(name="endtime", type="integer")
     * @Required()
     */
    private $endtime;

    /**
     * @var string $initiator 
     * @Column(name="initiator", type="string", length=20)
     * @Required()
     */
    private $initiator;

    /**
     * @param int $value
     * @return $this
     */
    public function setId(int $value)
    {
        $this->id = $value;

        return $this;
    }

    /**
     * @param int $value
     * @return $this
     */
    public function setWxid(int $value): self
    {
        $this->wxid = $value;

        return $this;
    }

    /**
     * @param string $value
     * @return $this
     */
    public function setTitle(string $value): self
    {
        $this->title = $value;

        return $this;
    }

    /**
     * @param string $value
     * @return $this
     */
    public function setContent(string $value): self
    {
        $this->content = $value;

        return $this;
    }

    /**
     * @param int $value
     * @return $this
     */
    public function setAddtime(int $value): self
    {
        $this->addtime = $value;

        return $this;
    }

    /**
     * @param int $value
     * @return $this
     */
    public function setUpdatetime(int $value): self
    {
        $this->updatetime = $value;

        return $this;
    }

    /**
     * @param string $value
     * @return $this
     */
    public function setAddress(string $value): self
    {
        $this->address = $value;

        return $this;
    }

    /**
     * @param int $value
     * @return $this
     */
    public function setStarttime(int $value): self
    {
        $this->starttime = $value;

        return $this;
    }

    /**
     * @param int $value
     * @return $this
     */
    public function setEndtime(int $value): self
    {
        $this->endtime = $value;

        return $this;
    }

    /**
     * @param string $value
     * @return $this
     */
    public function setInitiator(string $value): self
    {
        $this->initiator = $value;

        return $this;
    }

    /**
     * @return mixed
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * @return int
     */
    public function getWxid()
    {
        return $this->wxid;
    }

    /**
     * @return string
     */
    public function getTitle()
    {
        return $this->title;
    }

    /**
     * @return string
     */
    public function getContent()
    {
        return $this->content;
    }

    /**
     * @return int
     */
    public function getAddtime()
    {
        return $this->addtime;
    }

    /**
     * @return int
     */
    public function getUpdatetime()
    {
        return $this->updatetime;
    }

    /**
     * @return string
     */
    public function getAddress()
    {
        return $this->address;
    }

    /**
     * @return int
     */
    public function getStarttime()
    {
        return $this->starttime;
    }

    /**
     * @return int
     */
    public function getEndtime()
    {
        return $this->endtime;
    }

    /**
     * @return string
     */
    public function getInitiator()
    {
        return $this->initiator;
    }

}
